<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<TITLE>
SoytreeUtils (Soy Complete)
</TITLE>


<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="SoytreeUtils (Soy Complete)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../com/google/template/soy/soytree/SoySyntaxExceptionUtils.html" title="class in com.google.template.soy.soytree"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.Shortcircuiter.html" title="interface in com.google.template.soy.soytree"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?com/google/template/soy/soytree/SoytreeUtils.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="SoytreeUtils.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.google.template.soy.soytree</FONT>
<BR>
Class SoytreeUtils</H2>
<PRE>
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
  <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>com.google.template.soy.soytree.SoytreeUtils</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>SoytreeUtils</B><DT>extends <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></DL>
</PRE>

<P>
Shared utilities for the 'soytree' package.

 <p> Important: Do not use outside of Soy code (treat as superpackage-private).
<P>

<P>
<HR>

<P>
<!-- ======== NESTED CLASS SUMMARY ======== -->

<A NAME="nested_class_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Nested Class Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;interface</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.Shortcircuiter.html" title="interface in com.google.template.soy.soytree">SoytreeUtils.Shortcircuiter</A>&lt;<A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.Shortcircuiter.html" title="type parameter in SoytreeUtils.Shortcircuiter">R</A>&gt;</B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Helper interface for <code>visitAllExprsShortcircuitably</code>.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T extends <A HREF="../../../../../com/google/template/soy/soytree/SoyNode.html" title="interface in com.google.template.soy.soytree">SoyNode</A>&gt; 
<BR>
T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.html#cloneWithNewIds(T)">cloneWithNewIds</A></B>(T&nbsp;origNode)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Clones the given node and then generates and sets new ids on all the cloned nodes (by default,
 SoyNode.clone() creates cloned nodes with the same ids as the original nodes).</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;R&gt; void</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.html#execOnAllV2Exprs(com.google.template.soy.soytree.SoyNode, com.google.template.soy.exprtree.AbstractExprNodeVisitor)">execOnAllV2Exprs</A></B>(<A HREF="../../../../../com/google/template/soy/soytree/SoyNode.html" title="interface in com.google.template.soy.soytree">SoyNode</A>&nbsp;node,
                 <A HREF="../../../../../com/google/template/soy/exprtree/AbstractExprNodeVisitor.html" title="class in com.google.template.soy.exprtree">AbstractExprNodeVisitor</A>&lt;R&gt;&nbsp;exprNodeVisitor)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Given a Soy node and a visitor for expression trees, traverses the subtree of the node and
 executes the visitor on all expressions held by nodes in the subtree.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;R&gt; void</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.html#execOnAllV2ExprsShortcircuitably(com.google.template.soy.soytree.SoyNode, com.google.template.soy.exprtree.AbstractExprNodeVisitor, com.google.template.soy.soytree.SoytreeUtils.Shortcircuiter)">execOnAllV2ExprsShortcircuitably</A></B>(<A HREF="../../../../../com/google/template/soy/soytree/SoyNode.html" title="interface in com.google.template.soy.soytree">SoyNode</A>&nbsp;node,
                                 <A HREF="../../../../../com/google/template/soy/exprtree/AbstractExprNodeVisitor.html" title="class in com.google.template.soy.exprtree">AbstractExprNodeVisitor</A>&lt;R&gt;&nbsp;exprNodeVisitor,
                                 <A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.Shortcircuiter.html" title="interface in com.google.template.soy.soytree">SoytreeUtils.Shortcircuiter</A>&lt;R&gt;&nbsp;shortcircuiter)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Given a Soy node and a visitor for expression trees, traverses the subtree of the node and
 executes the visitor on all expressions held by nodes in the subtree.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="execOnAllV2Exprs(com.google.template.soy.soytree.SoyNode, com.google.template.soy.exprtree.AbstractExprNodeVisitor)"><!-- --></A><H3>
execOnAllV2Exprs</H3>
<PRE>
public static &lt;R&gt; void <B>execOnAllV2Exprs</B>(<A HREF="../../../../../com/google/template/soy/soytree/SoyNode.html" title="interface in com.google.template.soy.soytree">SoyNode</A>&nbsp;node,
                                        <A HREF="../../../../../com/google/template/soy/exprtree/AbstractExprNodeVisitor.html" title="class in com.google.template.soy.exprtree">AbstractExprNodeVisitor</A>&lt;R&gt;&nbsp;exprNodeVisitor)</PRE>
<DL>
<DD>Given a Soy node and a visitor for expression trees, traverses the subtree of the node and
 executes the visitor on all expressions held by nodes in the subtree.

 <p> Only processes expressions in V2 syntax. Ignores all expressions in V1 syntax.
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>R</CODE> - The ExprNode visitor's return type.<DT><B>Parameters:</B><DD><CODE>node</CODE> - The root of the subtree to visit all expressions in.<DD><CODE>exprNodeVisitor</CODE> - The visitor to execute on all expressions.</DL>
</DD>
</DL>
<HR>

<A NAME="execOnAllV2ExprsShortcircuitably(com.google.template.soy.soytree.SoyNode, com.google.template.soy.exprtree.AbstractExprNodeVisitor, com.google.template.soy.soytree.SoytreeUtils.Shortcircuiter)"><!-- --></A><H3>
execOnAllV2ExprsShortcircuitably</H3>
<PRE>
public static &lt;R&gt; void <B>execOnAllV2ExprsShortcircuitably</B>(<A HREF="../../../../../com/google/template/soy/soytree/SoyNode.html" title="interface in com.google.template.soy.soytree">SoyNode</A>&nbsp;node,
                                                        <A HREF="../../../../../com/google/template/soy/exprtree/AbstractExprNodeVisitor.html" title="class in com.google.template.soy.exprtree">AbstractExprNodeVisitor</A>&lt;R&gt;&nbsp;exprNodeVisitor,
                                                        <A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.Shortcircuiter.html" title="interface in com.google.template.soy.soytree">SoytreeUtils.Shortcircuiter</A>&lt;R&gt;&nbsp;shortcircuiter)</PRE>
<DL>
<DD>Given a Soy node and a visitor for expression trees, traverses the subtree of the node and
 executes the visitor on all expressions held by nodes in the subtree.

 <p> Only processes expressions in V2 syntax. Ignores all expressions in V1 syntax.

 <p> Same as <code>visitAllExprs</code> except that this pass can be shortcircuited by providing a
 <A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.Shortcircuiter.html" title="interface in com.google.template.soy.soytree"><CODE>SoytreeUtils.Shortcircuiter</CODE></A>.
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>R</CODE> - The ExprNode visitor's return type.<DT><B>Parameters:</B><DD><CODE>node</CODE> - The root of the subtree to visit all expressions in.<DD><CODE>exprNodeVisitor</CODE> - The visitor to execute on all expressions.<DD><CODE>shortcircuiter</CODE> - The Shortcircuiter to tell us when to shortcircuit the pass.<DT><B>See Also:</B><DD><A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.Shortcircuiter.html" title="interface in com.google.template.soy.soytree"><CODE>SoytreeUtils.Shortcircuiter</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="cloneWithNewIds(com.google.template.soy.soytree.SoyNode)"><!-- --></A><A NAME="cloneWithNewIds(T)"><!-- --></A><H3>
cloneWithNewIds</H3>
<PRE>
public static &lt;T extends <A HREF="../../../../../com/google/template/soy/soytree/SoyNode.html" title="interface in com.google.template.soy.soytree">SoyNode</A>&gt; T <B>cloneWithNewIds</B>(T&nbsp;origNode)</PRE>
<DL>
<DD>Clones the given node and then generates and sets new ids on all the cloned nodes (by default,
 SoyNode.clone() creates cloned nodes with the same ids as the original nodes).

 <p> This function will use the original Soy tree's node id generator to generate the new node
 ids for the cloned nodes. Thus, the original node to be cloned must be part of a full Soy tree.
 However, this does not mean that the cloned node will become part of the original tree (unless
 it is manually attached later). The cloned node will be an independent subtree with parent set
 to null.
<P>
<DD><DL>
<DT><B>Type Parameters:</B><DD><CODE>T</CODE> - The type of the node being cloned.<DT><B>Parameters:</B><DD><CODE>origNode</CODE> - The original node to be cloned. This node must be part of a full Soy tree,
     because the generator for the new node ids will be retrieved from the root (SoyFileSetNode)
     of the tree.
<DT><B>Returns:</B><DD>The cloned node, with all new ids for its subtree.</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../com/google/template/soy/soytree/SoySyntaxExceptionUtils.html" title="class in com.google.template.soy.soytree"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../com/google/template/soy/soytree/SoytreeUtils.Shortcircuiter.html" title="interface in com.google.template.soy.soytree"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?com/google/template/soy/soytree/SoytreeUtils.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="SoytreeUtils.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

        
          <div id="footer">
            <div id="footerlogo" style="float:left">
              <img src="http://www.google.com/images/art.gif"
                   alt="Google colored balls">
            </div>
            <div id="copyright" style="float:left">
              <p>
                &copy; 2009 Google -
                <a href="http://www.google.com/privacy.html">Privacy Policy</a> -
                <a href="http://www.google.com/terms_of_service.html">Terms and Conditions</a> -
                <a href="http://www.google.com/about.html">About Google</a>
              </p>
            </div>
          </div>
        
      
</BODY>
</HTML>
